module.exports = {
	up: (queryInterface, Sequelize) => {
		const { INTEGER, STRING, DATE, ENUM, TEXT } = Sequelize;
		return queryInterface.createTable('user', {
			id: {
				type: INTEGER(20),
				primaryKey: true, // 作为主键
				autoIncrement: true // 自增
			},
			username: {
				type: STRING(30),
				// 将 allowNull 设置为 false 将为该列添加 NOT NULL,
				allowNull: false,
				defaultValue: '',
				comment: '用户名', // 备注
				unique: true // 唯一
			},
			nickname: {
				type: STRING(30),
				allowNull: false,
				defaultValue: '',
				comment: '昵称'
			},
			email: {
				type: STRING(160),
				allowNull: false,
				defaultValue: '',
				comment: '邮箱'
			},
			password: {
				type: STRING,
				allowNull: false,
				defaultValue: '',
				comment: '密码'
			},
			avatar: {
				type: STRING,
				allowNull: true,
				defaultValue: '',
				comment: '头像'
			},
			phone: {
				type: STRING(11),
				allowNull: false,
				defaultValue: '',
				comment: '手机'
			},
			sex: {
				type: ENUM,
				values: ['男', '女', '保密'],
				allowNull: false,
				defaultValue: '男',
				comment: '性别'
			},
			desc: {
				type: TEXT,
				allowNull: false,
				defaultValue: '',
				comment: '个性签名'
			},
			total_size: {
				type: INTEGER,
				defaultValue: 10485760,
				comment: '网盘总大小，单位:kb'
			},
			used_size: {
				type: INTEGER,
				defaultValue: 0,
				comment: '网盘已使用大小，单位:kb'
			},
			created_time: DATE,
			updated_time: DATE
		});
	},

	down: queryInterface => {
		return queryInterface.dropTable('user');
	}
};
